import os import sys # -*- coding: iso-8859-1 -*- class _Getch: def __init__(self): try: self.impl = _GetchWindows() except ImportError: self.impl = _GetchUnix() def __call__(self): return self.impl() class _GetchUnix: def __init__(self): import tty, sys def __call__(self): import sys, tty, termios fd = sys.stdin.fileno() old_settings = termios.tcgetattr(fd) try: tty.setraw(sys.stdin.fileno()) ch = sys.stdin.read(1) finally: termios.tcsetattr(fd,termios.TCSADRAIN,old_settings) return ch class _GetchWindows: def __init__(self): import msvcrt def __call__(self): import msvcrt return msvcrt.getch() def print_there(x, y, text): print("\33[%d;%df%s\x1b8" % (x, y, text)) getch = _Getch() char = getch() #113 q x = 0 y = 0 while ord(char) != 113: #print(ord(char)) os.system('cls') if ord(char) == 75: print_there(x, y, 'O') if(x > 0): x -= 1 if ord(char) == 77: print_there(x, y, 'O') if(x < 100): x += 1 if ord(char) == 72: print_there(x, y, 'O') if(y > 0): y -= 1 if ord(char) == 80: print_there(x, y, 'O') if(y < 100): y += 1 char = getch()